package com.ruoyi.supervise.util;

import com.ruoyi.common.config.Global;
import com.ruoyi.common.utils.StringUtils;

import cn.hutool.core.util.StrUtil;

/**
 * @ClassName: FieldStrUtils
 * @Description: 陵水住建厅项目对数据库字段内容进行处理工具类
 * @Author wtj
 * @DateTime 2020年5月20日 下午3:19:00
 */
public class FieldStrUtils {

	/**
	 * @Title: personField
	 * @Description: 处理字段的方法,可能会包含，
	 * @Author wtj
	 * @DateTime 2020年5月20日 下午3:18:43
	 * @param str
	 * @return
	 */
	public static String personOrEnterField(String str) {  
		if(!StringUtils.isEmpty(str) && StrUtil.containsAny(str, "|")) {
			int num=StringUtils.hit(str,"|");
			if(StrUtil.containsAny(str, ",") && num>1) {
				String peStr = "";
				String[] subStr=StrUtil.split(str, ",");
				for(String s:subStr) {
					String[] ps=StrUtil.split(s, "|");
					if(ps.length>= 2) {
						if(StringUtils.isEmpty(peStr)) {
							peStr = ps[1];
						}else {
							peStr = peStr + "," + ps[1];
						}
					}
				}
				return peStr;
			}else {
				String[] subStr=StrUtil.split(str, "|");
				if(subStr.length >= 2) {
					   return subStr[1];
				   }else {
					   return " ";
				   }
			}
		}
		return str;
	}
	
	/**
	 * @Title: personOrEnterFieldNot
	 * @Description: 处理字段的方法,不包含，
	 * @Author wtj
	 * @DateTime 2020年5月26日 下午4:23:30
	 * @param str
	 * @return
	 */
	public static String personOrEnterFieldNot(String str) {
		if(!StringUtils.isEmpty(str) && StrUtil.containsAny(str, "|")) {
			String[] subStr=StrUtil.split(str, "|");
			if(subStr.length >= 2) {
				   return subStr[1];
			   }else {
				   return " ";
			   }
		}
		return str;
	}
	
	/**
	 * @Title: personOrEnterFieldParaNot
	 * @Description: 处理企业字段
	 * @Author wtj
	 * @DateTime 2020年6月3日 上午10:16:49
	 * @param str 传入的字符串
	 * @param length 长度大于多少是符合规范的
	 * @param num 要返回切割后的第几位
	 * @return
	 */
	public static String personOrEnterFieldParaNot(String str,int length,int num) {
		if(!StringUtils.isEmpty(str) && StrUtil.containsAny(str, "|")) {
			String[] subStr=StrUtil.split(str, "|");
			if(subStr.length >= length) {
				   return subStr[num];
			   }else {
				   return " ";
			   }
		}
		return str;
	}
	
	/**
	 * @Title: fileField
	 * @Description: 处理文件字段的方法
	 * @Author wtj
	 * @DateTime 2020年5月20日 下午3:22:12
	 * @param str 要传入的字符串
	 * @return
	 */
	public static String fileField(String str) {
		if(!StringUtils.isEmpty(str)) {
			String[] subStr=StrUtil.split(str, "|");
			if(subStr.length >= 2) {
				return Global.getConfig("ruoyi.bigPlatform")+subStr[1];
			}else {
				return "";
			}
		}
		return str;
	}
	
	/**
	 * @Title: fileFieldThreePara
	 * @Description: 处理文件字段
	 * @Author wtj
	 * @DateTime 2020年6月3日 上午10:19:07
	 * @param str 要传入的字符串
	 * @param length 长度大于多少是符合规范的
	 * @param num 要返回切割后的第几位
	 * @return
	 */
	public static String fileFieldThreePara(String str,int length,int num) {
		if(!StringUtils.isEmpty(str)) {
			String[] subStr=StrUtil.split(str, "|");
			if(subStr.length >= length) {
				return Global.getConfig("ruoyi.bigPlatform")+subStr[num];
			}else {
				return "";
			}
		}
		return str;
	}
}
